home *** CD-ROM | disk | FTP | other *** search
/ Champak 106 / Vol 106.iso / games / hulk.swf / scripts / com / soap / net / MarvelLoginConnector.as next >
Encoding:
Text File  |  2010-04-12  |  3.5 KB  |  112 lines

  1. package com.soap.net
  2. {
  3.    import com.markdavies.debug.DebugBox;
  4.    import com.markdavies.events.CustomEvent;
  5.    import flash.events.*;
  6.    import flash.net.*;
  7.    
  8.    public class MarvelLoginConnector extends EventDispatcher
  9.    {
  10.       
  11.       public static var EVENT_LOGIN_FAILED:String = "loginFailed";
  12.       
  13.       public static var LOGIN_URL:String = "/soap/login.php";
  14.       
  15.       public static var EVENT_LOGIN_SUCCESS:String = "loginSuccess";
  16.        
  17.       
  18.       private var recVariables:URLVariables;
  19.       
  20.       private var sendVariables:URLVariables;
  21.       
  22.       private var loader:URLLoader;
  23.       
  24.       private var request:URLRequest;
  25.       
  26.       public var marvelUser:MarvelLoginUser;
  27.       
  28.       public function MarvelLoginConnector()
  29.       {
  30.          super();
  31.          init();
  32.       }
  33.       
  34.       private function securityErrorHandler(param1:SecurityErrorEvent) : void
  35.       {
  36.          DebugBox.debug("marvellogin","securityErrorHandler");
  37.          dispatchEvent(new CustomEvent(MarvelLoginConnector.EVENT_LOGIN_FAILED));
  38.       }
  39.       
  40.       private function init() : void
  41.       {
  42.          loader = new URLLoader();
  43.          request = new URLRequest(MarvelLoginConnector.LOGIN_URL);
  44.       }
  45.       
  46.       private function ioErrorHandler(param1:IOErrorEvent) : void
  47.       {
  48.          DebugBox.debug("marvellogin","ioErrorHandler");
  49.          dispatchEvent(new CustomEvent(MarvelLoginConnector.EVENT_LOGIN_FAILED));
  50.       }
  51.       
  52.       public function login(param1:String, param2:String) : void
  53.       {
  54.          var user:String = param1;
  55.          var pass:String = param2;
  56.          sendVariables = new URLVariables();
  57.          sendVariables.action = "login";
  58.          sendVariables.user = user;
  59.          sendVariables.pass = pass;
  60.          request.data = sendVariables;
  61.          request.method = "GET";
  62.          loader.addEventListener(Event.COMPLETE,onComplete,false,0,true);
  63.          loader.addEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler,false,0,true);
  64.          loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR,securityErrorHandler,false,0,true);
  65.          try
  66.          {
  67.             loader.load(request);
  68.          }
  69.          catch(error:Error)
  70.          {
  71.             DebugBox.debug("marvellogin","can\'t load that");
  72.             dispatchEvent(new CustomEvent(MarvelLoginConnector.EVENT_LOGIN_FAILED));
  73.          }
  74.       }
  75.       
  76.       private function onComplete(param1:Event) : void
  77.       {
  78.          var _loc2_:Array = null;
  79.          var _loc3_:int = 0;
  80.          var _loc4_:Array = null;
  81.          marvelUser = new MarvelLoginUser();
  82.          _loc2_ = loader.data.split("&");
  83.          _loc3_ = 0;
  84.          while(_loc3_ < _loc2_.length)
  85.          {
  86.             _loc4_ = _loc2_[_loc3_].split("=");
  87.             switch(_loc4_[0])
  88.             {
  89.                case "user_id":
  90.                   marvelUser.userID = _loc4_[1];
  91.                   break;
  92.                case "member_name":
  93.                   marvelUser.username = _loc4_[1];
  94.                   break;
  95.                case "country_id":
  96.                   marvelUser.country = _loc4_[1];
  97.                   break;
  98.             }
  99.             _loc3_++;
  100.          }
  101.          if(marvelUser.userID != "")
  102.          {
  103.             dispatchEvent(new CustomEvent(MarvelLoginConnector.EVENT_LOGIN_SUCCESS,{"marvelUser":marvelUser}));
  104.          }
  105.          else
  106.          {
  107.             dispatchEvent(new CustomEvent(MarvelLoginConnector.EVENT_LOGIN_FAILED));
  108.          }
  109.       }
  110.    }
  111. }
  112.